﻿///@author Rafał Hazan
///@email  rafal.hazan@gmail.com

#ifndef __REPLACEMENT_OPERATOR__
#define __REPLACEMENT_OPERATOR__

#include "EvolutionaryAlgorithm.h"

/// Interfejs operatora sukcesji.
class ReplacementOperator
{
	public:
		virtual ~ReplacementOperator() {}
		virtual EvolutionaryAlgorithm::population_type & replace(EvolutionaryAlgorithm::population_type & actualPopulation, const EvolutionaryAlgorithm::population_type & children) = 0;
};

#endif